压力测试 | 您所在的位置:网站首页 › jmeter html报告 数据 js › 压力测试 |
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第22天,点击查看活动详情 1.写在前面等到服务上线后,在业务压力的冲击下,会发现程序运行非常的慢,或者是宕机,莫名其妙的出现各种问题,只会进行一些无脑的硬件资源扩容,哪扩容真的能解决问题吗? 能解决的问题其实非常有限,同时也会带来新的问题, 资源浪费 !因此要确保项目上线稳定可靠,必须要性能压力测试,便于早发现服务问题,早解决性能问题。 降本提效 ,始终是技术人员在企业中最能体现价值的核心技能。 当然,随着公司规模的扩张,部门扩张对每个人的要求不再是全能型,而是专业人才。在企业里压力测试会专门交给测试人员去做,但是身为后端研发工程师,对压力测试的技术也必须要懂要会,毕竟在企业中,最有机会成为技术Leader就是后端研发工程师,技术Leader必须是个全面人才。 要想成为技术Leader,压力测试就必须得会,那么今天我们就来谈谈压力测试得一些内容,主要从以下这些内容进行分享: 常用得压测工具 压测环境准备 压测入门,压测结果分析 常用参数解析好了,废话不多说,下面进入正题!!! 2.常用压测工具 Apache的ab压力测试 Nginter 韩国研发 Arthas 阿里测试工具 JMeter : 可视化的测试工具注意:测试容易受到网络抖动的干扰,服务器硬件配置环境影响;因此压力测试一般情况下,都应该在内网进行,不在外网去测试; 3.压测机环境准备:JMeter部署 官网:https://jmeter.apache.org/ 教程:http://www.jmeter.com.cn/2747.html 复制代码Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试 静态和动态资源 ,例如静态文件、Java 小服务程序 、 CGI 脚本 、 Java 对象 、 数据库 、 FTP 服务器 , 等等。 3.1 JMeter下载安装&启动&配置jemeter镜像下载地址:jmeter.apache.org/ windows可以使用图形化界面进行测试,linux建议使用命令模式进行测试。但是为了测试的便捷性,我们使用jmeter的图形化界面进行压力测试。 1 )使用windows方法进行启动 2 )配置外观 3 )中文简体需要修改jmeter.properties language=zh_CN 好了,jmeter启动使用是很简单的。 3.2 入门案例疑问:SpringBoot理论上线?200TPS 为什么单体的SpringBoot并发怎么这么高?9000+ 1 )新建压力测试 2 )配置线程组:线程属性说明:ramp-up背后含义不好理解,案例做完有详细解释 线程数: 5000 , 线程数量 ramp-up:表示在指定时间之内把这些线程全部启动起来。 这里表示 5s以内把 5000 个线程全部启动起来。 循环次数:20 ,表示把 5000 thread /5s 循环 20 次 3 )配置HTTP接口:http://localhost:8080/user/findByUsername/llsydn 选择Java,选择keepalive方式,使用长连接的方式,防止频繁的建立连接,关闭连接消耗性能,这样我们的压测的性能消耗就会有部分消耗在建立,关闭连接的网络消耗上,这样会导致我们的压测数据不准确 4 )配置结果监听:配置监听器:监听压测结果【聚合报告和汇总结果很类似,看一个就行】 聚合报告:查询结果信息聚合汇总,例如样本、平均值、通吐量、最大值、最小值... 图像结果:分析了所有请求的平均值、终止、偏离值和通吐量之间的关系。 汇总结果:汇总压测结果 汇总图:将压测结果以图像形式展示 察看结果树:记录每一次压测请求添加方法,按照上图所示即可。 3.2.3、压测结果解释 1 )聚合报告: 样本(sample): 发送请求的总样本数量 响应时间【单位ms】: 平均值(average):平均的响应时间 中位数(median): 中位数的响应时间,50%请求的响应时间 90%百分位(90% Line): 90%的请求的响应时间,意思就是说90%的请求是 |
CopyRight 2018-2019 实验室设备网 版权所有 |